package cn.eonshine.cuba.inf.modular.biz.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;

/**
 * <p>
 * Tanker GPS位置表
 * </p>
 *
 * @author Alan
 * @since 2018-07-28
 */
@TableName("inf_tanker_gps_position")
public class TankerGpsPosition extends Model<TankerGpsPosition> {

    private static final long serialVersionUID = 1L;

    /**
     * primary key 主键
     */
    @TableField(exist = false)
    private String id;
    @TableId("vessel_id")
    private BigDecimal vesselId;
    @TableField("course_over_ground")
    private BigDecimal courseOverGround;
    /**
     * Boolean: True, False
     */
    @TableField("in_special_maneuver")
    private BigDecimal inSpecialManeuver;
    /**
     * Boolean: True, False
     */
    @TableField("is_moving")
    private BigDecimal isMoving;
    private BigDecimal latitude;
    @TableField("location_str")
    private String locationStr;
    private BigDecimal longitude;
    @TableField("nav_status")
    private String navStatus;
    private String received;
    private String source;
    private BigDecimal speed;
    @TableField("true_heading")
    private BigDecimal trueHeading;
    /**
     * Data collection status 数据采集状态
     */
    @TableField("LSMS_UPDATE")
    private BigDecimal lsmsUpdate;
    /**
     * Data input datetime 数据更新时间
     */
    @TableField("DATA_INPUT_DATETIME")
    private Date dataInputDatetime;

    public BigDecimal getVesselId() {
        return vesselId;
    }

    public void setVesselId(BigDecimal vesselId) {
        this.vesselId = vesselId;
    }

    public BigDecimal getCourseOverGround() {
        return courseOverGround;
    }

    public void setCourseOverGround(BigDecimal courseOverGround) {
        this.courseOverGround = courseOverGround;
    }

    public BigDecimal getInSpecialManeuver() {
        return inSpecialManeuver;
    }

    public void setInSpecialManeuver(BigDecimal inSpecialManeuver) {
        this.inSpecialManeuver = inSpecialManeuver;
    }

    public BigDecimal getIsMoving() {
        return isMoving;
    }

    public void setIsMoving(BigDecimal isMoving) {
        this.isMoving = isMoving;
    }

    public BigDecimal getLatitude() {
        return latitude;
    }

    public void setLatitude(BigDecimal latitude) {
        this.latitude = latitude;
    }

    public String getLocationStr() {
        return locationStr;
    }

    public void setLocationStr(String locationStr) {
        this.locationStr = locationStr;
    }

    public BigDecimal getLongitude() {
        return longitude;
    }

    public void setLongitude(BigDecimal longitude) {
        this.longitude = longitude;
    }

    public String getNavStatus() {
        return navStatus;
    }

    public void setNavStatus(String navStatus) {
        this.navStatus = navStatus;
    }

    public String getReceived() {
        return received;
    }

    public void setReceived(String received) {
        this.received = received;
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public BigDecimal getSpeed() {
        return speed;
    }

    public void setSpeed(BigDecimal speed) {
        this.speed = speed;
    }

    public BigDecimal getTrueHeading() {
        return trueHeading;
    }

    public void setTrueHeading(BigDecimal trueHeading) {
        this.trueHeading = trueHeading;
    }

    @Override
    protected Serializable pkVal() {
        return this.vesselId;
    }

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public BigDecimal getLsmsUpdate() {
		return lsmsUpdate;
	}

	public void setLsmsUpdate(BigDecimal lsmsUpdate) {
		this.lsmsUpdate = lsmsUpdate;
	}

	public Date getDataInputDatetime() {
		return dataInputDatetime;
	}

	public void setDataInputDatetime(Date dataInputDatetime) {
		this.dataInputDatetime = dataInputDatetime;
	}

	@Override
    public String toString() {
        return "TankerGpsPosition{" +
        ", vesselId=" + vesselId +
        ", courseOverGround=" + courseOverGround +
        ", inSpecialManeuver=" + inSpecialManeuver +
        ", isMoving=" + isMoving +
        ", latitude=" + latitude +
        ", locationStr=" + locationStr +
        ", longitude=" + longitude +
        ", navStatus=" + navStatus +
        ", received=" + received +
        ", source=" + source +
        ", speed=" + speed +
        ", trueHeading=" + trueHeading +
        "}";
    }
}
